package com.chenyue.cm.match.dao.ex;

import com.chenyue.cm.match.dao.provider.MatchDataCenterProvider;
import com.chenyue.cm.match.vo.DataCenter;
import com.chenyue.cm.match.vo.JdMatchVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.SelectProvider;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author libingxing
 */
@Mapper
@Repository
public interface MatchDataCenterMapperEx {

    /**
     * 数据中心
     *
     * @param type         赛事类型
     * @param item         赛事项目
     * @param createUser   发布三方
     * @param matchType    参赛类型（1单人单项/2单人多项/3多人多项）
     * @param matchGroup   参赛范围（1单人/2团体）
     * @param arrangeOrder 赛程阶段 1初赛2复赛3决赛
     * @param province     省
     * @param city         市
     * @param date         时间筛选
     * @param convertPage  分页
     * @return DataCenter
     */
    @SelectProvider(type = MatchDataCenterProvider.class, method = "dataCenterList")
    List<DataCenter> dataCenterList(Integer type, Integer item, Integer createUser, Integer matchType, Integer matchGroup,
                                    Integer arrangeOrder, Integer province, Integer city, String date, Integer matchId, String convertPage);

    /**
     * 数据中心  count
     *
     * @param type         赛事类型
     * @param item         赛事项目
     * @param createUser   发布三方
     * @param matchType    参赛类型（1单人单项/2单人多项/3多人多项）
     * @param matchGroup   参赛范围（1单人/2团体）
     * @param arrangeOrder 赛程阶段 1初赛2复赛3决赛
     * @param province     省
     * @param city         市
     * @param date         时间筛选
     * @return count
     */
    @SelectProvider(type = MatchDataCenterProvider.class, method = "dataCenterCount")
    Integer dataCenterCount(Integer type, Integer item, Integer createUser, Integer matchType, Integer matchGroup,
                            Integer arrangeOrder, Integer province, Integer city, String date,Integer matchId);


    @SelectProvider(type = MatchDataCenterProvider.class, method = "selectMatchVoCount")
    List<JdMatchVo> selectMatchVoCount(Integer type,String starTime,String endTime);



    @SelectProvider(type = MatchDataCenterProvider.class, method = "selectMatchVo")
    List<JdMatchVo> selectMatchVo(Integer type,String starTime,String endTime,String s);
}
